package com.example.springboot.mapper;

import com.example.springboot.entity.jobs;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 职位申请Mapper接口
 *
 * @author bxd
 * @date 2024-06-20
 */

@Mapper
public interface JobSearchMapper {
    // 搜索所有岗位
    List<jobs> findAllJobs();

    /**
     *
     * 职位信息分页查询
     */
    List<jobs> getEnterprisesPage(int offset, int limit);

    // 根据薪资排序搜索岗位
    List<jobs> findJobsBySalary(SalaryOrder order);

    // 根据发布日期排序搜索岗位
    List<jobs> findJobsByPublishDate(PublishDateOrder order);

    // 根据工作地点搜索职位
    List<jobs> findJobsByLocation(String location);

    // 根据公司id搜索职位
    List<jobs> findJobsByCompanyId(Long companyId);

    // 根据职位id搜索
    jobs findJobById(Long jobId);

    // 根据职位标题搜索
    List<jobs> findJobsByJobTitle(String jobTitle);

    // 枚举定义，用于指定排序顺序
    enum SalaryOrder {
        ASC, DESC
    }

    enum PublishDateOrder {
        ASC, DESC
    }

}
